package com.vxdata.utils.modules.utils.zhjt;

import java.text.DecimalFormat;

/**
 * 计算百分比
 */
public class PercentUtil {
    /**
     * 计算百分比
     * 本月在线率=0, 上月数据!=0, 本月环比上月=-100%   本月在线率=0, 上月数据=0, 本月环比上月=0%
     * 本月在线率!=0, 上月数据!=0, 本月环比上月=(本月在线率-上月在线率)/上月在线率    本月在线率!=0, 上月数据=0, 本月环比上月=100%
     *
     * @param now  分子
     * @param last 分母
     * @return
     */
    public static Float getMonthOnYearPercent(Float now, Float last) {
        if (0 == now) {
            return 0 != last ? -100f : 0f;
        } else {
            DecimalFormat decimalFormat = new DecimalFormat("##.00");
            return 0 != last ? Float.valueOf(decimalFormat.format((now - last) / last * 100)) : 100f;
        }
    }

    /**
     * 计算百分比
     *
     * @param a 分子
     * @param b 分母
     * @return
     */
    public static Float getPercent(Float a, Float b) {
        DecimalFormat decimalFormat = new DecimalFormat("##.00");
        if (a == 0f || b == 0f) {
            return 0f;
        }
        return Float.valueOf(decimalFormat.format(a / b * 100));
    }
}
